home *** CD-ROM | disk | FTP | other *** search
/ MIDICraft's MIDINET CD-ROM / MIDICraft's MIDINET CD-ROM.iso / DOSUTILS / MIDICUT.DOC < prev    next >
Text File  |  1997-01-11  |  5KB  |  135 lines

  1.         ******************************
  2.             MIDICUT v1.0
  3.     
  4.             cut part of midi file
  5.               by Guenter Nagler 
  6.                 1997 
  7.           (gnagler@ihm.tu-graz.ac.at)
  8.         ******************************
  9.  
  10. [0] FEATURES
  11.     + reads a binary midi file
  12.     + writes a binary midi file
  13.     + removes part before start time and after end time
  14.     + cut certain channels (1-16)
  15.     + important midi events are copied to start or end of midi song
  16.       (e.g. note off at end) to start and end song correctly
  17.  
  18. [1] BACKGROUND
  19. Sometimes midi files are too large or contain parts that sound worse than 
  20. rest. This utility could be used to copy certain parts of a midi song
  21. into a new file.
  22. It needs to specify midi time of two cut points (currently seconds).
  23.  
  24. Use midifade with option -time to find time values or use a midiplayer that
  25. shows current playing time.
  26.  
  27. If you only want to cut the pauses at start or end of midi file then 
  28. use simplier program miditrim.
  29.  
  30. By default midicut simply copies the full midi song.
  31. When selecting certain channels this program can also be used to 
  32. copy these channels. The result will be a new song playing less channels.
  33.  
  34. [2] FILES DESCRIPTION
  35.  
  36. MIDICUT.EXE.........converter program
  37. MIDICUT.DOC.........this file, showing usage of MIDICUT.EXE
  38. MIDIIO.HPP..........header file for a c++ midi parser
  39. MIDIIO.CPP..........source code for a c++ midi parser
  40. MIDICUT.CPP.........c++ source code for modifying midi files
  41. MIDICUT.MAK.........make file for project
  42. MIDICUT.CFG.........compiler options for make
  43. MIDICUT.PRJ.........compiler project for Borland (tm) c++ compilers
  44. only MIDICUT.EXE is required to run program
  45.  
  46. [3] COPYRIGHT
  47.  
  48. MIDICUT (c) 1997 was created by Guenter Nagler.
  49.  
  50. MIDICUT is free and may be used as you wish with this one exception:
  51.  
  52.     You may NOT charge any fee or derive any profit for distribution
  53.     of MIDICUT.  Thus, you may NOT sell or bundle MIDICUT with any
  54.     product in a retail environment (shareware disk distribution, CD-ROM,
  55.     etc.) without permission of the author.
  56.  
  57. You may give MIDICUT to your friends, upload it to a BBS, or ftp it to
  58. another internet site, as long as you don't charge anything for it.
  59.  
  60. [4] DISCLAIMER
  61.  
  62. MIDICUT was designed to handle 100% compatible midi files.
  63. It was tested with 600 different midi files but I can not say if 
  64. each 100% midi compatible midi file can be correctly converted.
  65. So I give no guarantees of the results, especially with non 100% 
  66. compatible midi files.
  67. If you find a midi file that you think to be 100% compatible midi
  68. that is not correctly converted, please send a sample file to 
  69. gnagler@ihm.tu-graz.ac.at . 
  70.  
  71. Use MIDICUT at your own risk.  Anything you do with MIDICUT is your
  72. responsibility, and not the author's.  Any damage caused to any person,
  73. computer, software, hardware, company, or business by running MIDICUT
  74. is your responsibility, and the author will not be liable.
  75.  
  76. If you don't understand these terms, or are not sure of something, or
  77. are afraid something bad might come of using MIDICUT, don't  use  it!
  78. You are here forewarned.
  79.  
  80. [5] INSTALLATION
  81.  
  82. [MSDOS]
  83. Simply copy MIDICUT.EXE in a directory that is in your path.
  84. When you start the program without arguments
  85.  
  86. [UNIX]
  87. compile sources with your C++ compiler (e.g. GNU Compiler g++):
  88.  
  89. g++ -o midicut midicut.cpp midiio.cpp
  90.  
  91. and run program
  92.  
  93. $ midicut
  94.  
  95. C:\> midicut
  96.  
  97. you should get the usage text (see next section)
  98.  
  99. [6] USAGE
  100.  
  101. midicut copies a part of a midi song into a new file
  102. usage: MidiCut [-q][-ch #[-#]][-from #][-till #] file.mid cutfile.mid
  103. -version        get program version
  104. -q      be quiet
  105. -channel c[-d]  copy only selected channels c..d (1-16) to output
  106. -from # start cut at second # (default: 0)
  107. -end #  end cut at second # (default: end of song)
  108. The parts in brackets [...] are optional.
  109.  
  110. Warning:
  111.   Do not expect that MIDICUT will produce a copy of the original
  112.   file if no changes are applied! MIDI allows to encode its commands 
  113.   in different ways without changing the semantic of the notes (It 
  114.   is allowed to compress the midi file by ommiting redunant command
  115.   bytes, but it is no duty).
  116.   MIDICUT only compresses note on/off command bytes for higher
  117.   compatibility.
  118.       
  119. [8] SUGGESTIONS / COMMENTS / BUG REPORTS / QUESTIONS
  120.  
  121.          WWW:    http://hgiicm.tu-graz.ac.at/Cpub
  122.           contains all my dos/unix midi programs
  123.          EMAIL:  gnagler@ihm.tu-graz.ac.at
  124.  
  125. [9] EXAMPLES
  126.  
  127. example: cut the part between second 112 and 146 from midi song test.mid
  128.  
  129.    midicut -from 112 -till 146 test.mid testcut.mid
  130.  
  131. example: all channels except drums (channel 10) from midi song test.mid
  132.  
  133.    midicut -channel 1-9 -channel 11-16 test.mid nodrum.mid
  134.  
  135.